package Negocio;

import java.sql.Date;
import java.util.ArrayList;
import java.util.List;

import DTO.DTO_DepositoLocal;
import DTO.DTO_Movimiento;
import DTO.DTO_StockInsumo;
import Entities.Entity_DepositoLocal;
import Entities.Entity_Movimiento;
import Entities.Entity_StockInsumo;

public class DepositoLocal  extends Deposito {

	public DepositoLocal(String estado, int idDeposito, Date vencimiento,
			List<Movimiento> movimientos, List<StockInsumo> stockInsumo) {
		super(estado, idDeposito, vencimiento, movimientos, stockInsumo);
		// TODO Auto-generated constructor stub
	}
	
	public DepositoLocal(DTO_DepositoLocal dL) {
		super(dL);
		// TODO Auto-generated constructor stub
	}
	
	public DepositoLocal(Entity_DepositoLocal dL) {
		super(dL);
		// TODO Auto-generated constructor stub
	}

	public DTO_DepositoLocal toDTO()
	{
		DTO_DepositoLocal dl = new DTO_DepositoLocal();
		dl.setEstado(this.estado);
		dl.setIdDeposito(this.idDeposito);
		dl.setVencimiento(vencimiento);
		List<DTO_Movimiento> movs = new ArrayList<DTO_Movimiento>();
		for(Movimiento mov: this.movimientos)
			movs.add(mov.toDTO());
		dl.setMovimientos(movs);
		List<DTO_StockInsumo> sis = new ArrayList<DTO_StockInsumo>();
		for(StockInsumo si: this.stockInsumos)
			sis.add(si.toDTO());
		dl.setMovimientos(movs);
		dl.setStockInsumo(sis);
		return dl;
	}
	
	public Entity_DepositoLocal toEntity()
	{
		Entity_DepositoLocal dl = new Entity_DepositoLocal();
		dl.setEstado(this.estado);
		dl.setIdDeposito(this.idDeposito);
		dl.setVencimiento(vencimiento);
		List<Entity_Movimiento> movs = new ArrayList<Entity_Movimiento>();
		for(Movimiento mov: this.movimientos)
			movs.add(mov.toEntity());
		dl.setMovimientos(movs);
		List<Entity_StockInsumo> sis = new ArrayList<Entity_StockInsumo>();
		for(StockInsumo si: this.stockInsumos)
			sis.add(si.toEntity());
		dl.setMovimientos(movs);
		dl.setStockInsumos(sis);
		return dl;
	}

}
